1 ASN.1 Filter

1.1 Description

The ASN.1 Filter (asn) is used in conjunction with the general filter controller fcontrol, and is located in the formdir directory.

It is a general body part conversion filter and can do a variety of conversions depending on its specified options. These options are:

1. Accept as input one of 2 choices:

• An ASN.1 wrapped body part

• A body part that is not encoded in any way (unwrapped ia5 text).

2. Optionally perform a character set conversion on the body part.

3. Produce as output one of 2 choices:

• an ASN.1 wrapped body part.

• A body part that is not encoded in any way (unwrapped ia5 text).

1.2 Runtime Options

asn [−ia ”none” | input.asn1] [−oa ”none” | output.asn1] [−is input.character.set] [−os output.character.set] [−x | − m] [−l]

Please note the following:

• All keywords and values are optional.

• If ’-is’ is specified then ’-os’ is mandatory, and vice versa.

• If ’-is’ has the same value as ’-os’ then no character set conversion is performed.

• If the -ia and/or -oa is not specified, then the default is ’none’, which means ’No ASN.1 encoding and/or decoding is required’, i.e the body part is read and/or output as is.

• For available character set values, please refer to Appendix A - ”Character Sets supported by the charset filter”.

• At present, there are only 5 available input.asn1 and output.asn1 values, they are:

1. none

2. ia5 (unwrapped)

3. generaltext

4. motis-86-6937

5. teletex

• The -x/-m options specify either a X.408 or a Mnemonic conversion. The default is -x, where mnemonics are unrecognised. See the charset filter documentation for more information.

• Sometimes quite legally, remote sites leave out the < CR > characters terminating ASN.1 encoded body part lines. The -l option prevents on decoding, the concatenation of such lines.

1.3 Tailoring

The following fields need to be set within the tailor file.

• prog, set to the value fcontrol, because the asn filter is only used in conjunction with the general filter controller.

• bptin and bptout, set to specified bodyparts.

• type, set to shaper.

• conv, set to either conv or loss.

• cost, only set if conv=loss.

• info, set to the ASN.1 filter name asn followed by its required options.

1.3.1 Tailoring Examples

Example 1 Converting an ASN.1 iso6937 body part into an unwrapped ia5 body part:

chan iso6937toia5   prog=fcontrol,
                 show="iso6937 -> ia5 conversion filter",
                 bptin=iso6937, bptout=ia5,
                 type=shaper, conv=loss, cost=99,
                 info="asn -is iso_6937-2-add -os ccitt_x.408_ia5irv
                       -ia motis-86-6937 -oa ia5"

Example 2 Converting a ia5 unwrapped body part into an ASN.1 iso6937 body part.

chan ia5toiso6937   prog=fcontrol,
                    show="ia5 -> iso6937 conversion filter",
                    bptin=ia5, bptout=iso6937,
                    type=shaper, conv=loss, cost=99,
                    info="asn -is ccitt_x.408_ia5irv -os iso_6937-2-add
                          -ia ia5 -oa motis-86-6937"

Example 3 Converting a ASN.1 iso6937 body part into a ASN.1 teletex body part.

chan iso6937toteletex prog=fcontrol,
                        show="iso6937 -> teletex conversion filter",
                        bptin=iso6937, bptout=ttx,
                        type=shaper, conv=loss, cost=99,
                        info="asn -is iso_6937-2-add -os t.61-8bit
                              -ia motis-86-6937 -oa teletex"